The present invention relates to the interaction of graphical objects in a graphical environment.
A user may interface with electronic and mechanical devices in a variety of applications, and the need for a natural and informative interaction is a constant concern. For example, in one application, a user may interface with computer devices to interact with computer-generated environments, such as virtual reality environments, including games, surgical simulations, and application programs. Computer input devices such as mice and trackballs are often used to control a graphical image, such as a cursor, within a graphical environment and provide input in these applications.
The graphical image may be a graphical representation of a portion of the user or of an instrument being engaged by the user. This representation may be an abstraction, such as a pointer cursor that interacts with a graphical user interface, or more realistic representation, such as a graphical surgical instrument being used in a simulated surgical procedure. With either representation, the user may control the positioning of the graphical image and may cause the graphical image to interact with graphical objects within the graphical environment. When this interaction is not realistic, the simulation may be disconcerting to the user. For example, a user may cause a graphical instrument to abut a barrier. However, the user may view the graphical instrument penetrating the graphical barrier, thereby reducing the realism of the simulation.
In some interface devices, force feedback and/or tactile feedback is also provided to the user, collectively known herein as “haptic feedback.” For example, haptic versions of joysticks, mice, gamepads, steering wheels, or other types of devices can output forces to the user based on events or interactions occurring within the graphical environment, such as in a game or other application program. In a virtual reality simulation, it is often desirable to graphically represent a user or a portion of the user in the graphical environment and to allow the user to realistically interact with the graphical environment. However, even with these haptic devices, the forces may be insufficient to prevent the interface device from allowing, for example, the graphical instrument from penetrating the graphical barrier.